1. Technical Field
The present disclosure relates to snapshots and, more specifically, to efficient implementation of a snapshot for a datum on a byte-addressable persistent memory of a host computer.
2. Background Information
The advent of byte-addressable persistent memory, such as storage class memory, may accelerate adoption of primary storage to reside on a memory bus of a host computer, as well as acceptance of “in-memory” computing. The persistent memory may be configured to enable applications executing on the host computer to safely and consistently modify (change) their data and associated data structures at a byte addressable granularity. Yet, even safe and consistent data stored in the persistent memory may be vulnerable, e.g., in the event of a data loss, because there is only a single copy of the data and associated data structures on the host computer.
A snapshot is a data management feature that offers a consistent, read-only copy or representation of data at a previous time and, as such, is useful for experimentation, archiving and data recovery. Typically, the data is organized as a logical construct, such as a file or database, and a copy of the file or database is taken to create the snapshot. However, it may be desirable to provide a capability for implementing a snapshot of an individual datum, e.g., on a per data structure basis, stored on a byte-addressable persistent memory of a host computer.